/* 一般中间件，在页面上使用时通过异步导入自动加载 */
/* 全局路由中间件，放置在 middleware/ 目录下，并以 .global 后缀结尾，在每次路由更改时运行。 */

/* setPageLayout  设置应用框架 */

const whiteRoute = ['/login']

export default defineNuxtRouteMiddleware((to, from) => {
  if (to.path === '/login'){
    setPageLayout(false)
  }

  if (!whiteRoute.includes(to.path) && to.path === '/login'){
    return navigateTo('/login')
  }


    /* 
    
      // 在服务器端跳过中间件
            if (process.server) return
            // 完全在客户端跳过中间件
            if (process.client) return
            // 或仅在初始客户端加载时跳过中间件
            const nuxtApp = useNuxtApp()
            if (process.client && nuxtApp.isHydrating && nuxtApp.payload.serverRendered) return
            })
    
    
    */


    console.log('全局路由中间件',to, from)

    // if (to.params.id === '1') {
    //   return abortNavigation()
    // }
    // 在实际应用中，你可能不会将每个路由重定向到 `/`
    // 但是在重定向之前检查 `to.path` 是很重要的，否则可能会导致无限重定向循环
    // if (to.path !== '/') {
    //   return navigateTo('/')
    // }
})